package site.marqstree.kotlin.library.base.injection.activity

import android.app.Activity
import android.content.Context
import androidx.lifecycle.LifecycleOwner
import dagger.Component
import site.marqstree.kotlin.library.base.injection.app.AppComponent


/*
 * 项目名: KotlinMall
 * 包名: site.marqstree.kotlin.baselibrary.injection.component
 * 文件名: ActivityComponent
 * 创建者: marqstree
 * 创建时间: 2020/2/20 9:13
 * 描述: activity级别的依赖工厂管理者
 */
@ActivityScope
@Component(
    //定义依赖的app级依赖工厂管理者
    dependencies = arrayOf(AppComponent::class),
    //定义activity级的依赖工厂数组
    modules = arrayOf(
        ActivityModule::class))
interface ActivityComponent {
    //提供App的context
    fun appContext(): Context
    //提供activity
    fun activity(): Activity
}